Reusable Architectural Decisions for DSL Design Foundational Decisions in DSL Development
نویسندگان
چکیده
Domain-specific languages (DSL) receive a constantly growing attention in the area of software development. However, so far the documentation of reusable architectural knowledge for DSL design is rather limited. In this paper, we systematically explore the DSL design space by combining reusable architectural decision modeling and software patterns. In particular, we have explored three reusable architectural decisions in this design space: the decision for the type of DSL development process, the decision for the concrete syntax style, and the decision for developing an external vs. an embedded DSL. These decisions are foundational for each DSL project. Each of these decisions has a number of (candidate) patterns for DSL design. These (candidate) patterns define alternative solutions in the shared context and problem space of the respective reusable architectural decision.
منابع مشابه
Reusable Architectural Decisions for DSL Design: Foundational Decisions in DSL Projects
Domain-specific languages (DSL) receive a constantly growing attention in the area of software development. However, so far the documentation of reusable architectural knowledge for DSL design is rather limited. In this paper, we systematically explore the DSL design space by combining reusable architectural decision modeling and software patterns. In particular, we have explored three reusable...
متن کاملA DSL toolkit for deferring architectural decisions in DSL-based software design
A number of mature toolkits and language workbenches for DSL-based design have been proposed, making DSL-based design attractive for many projects. These toolkits preselect many architectural decision options. However, in many cases it would be beneficial for DSL-based design to decide for the DSL’s architecture later on in a DSL project, once the requirements and the domain have been sufficien...
متن کاملFunctional Debugging
Domain Specific Languages (DSLs) are languages designed to solve problems in specific domains. For software projects with a lot of functional requirements, a DSL could be designed to allow domain experts to write functional specifications. Implementation of such a DSL might be time-consuming, thereby delaying feedback on design decisions. Furthermore, there is a need for tools that support debu...
متن کاملHarmonizing architectural decisions with component view models using reusable architectural knowledge transformations and constraints
Architectural design decisions (ADDs) have been used in recent years for capturing design rationale and documenting architectural knowledge (AK). However, various architectural design views still provide the most common means for describing and communicating architectural design. The evolution of software systems requires that both ADDs and architectural design views are documented and maintain...
متن کاملProgram Slice Metrics and Their Potential Role in DSL Design
The advantages a DSL and the benefits its use potentially brings imply that informed decisions on the design of a domain specific language are of paramount importance for its use. We believe that the foundations of such decisions should be informed by analysis of data empirically collected from systems to highlight salient features that should then form the basis of a DSL. To support this theor...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009